<!-- templates/includes/pagination.html -->
<!-- 根目录通用分页模板片段：所有应用都能复用 -->
<nav aria-label="Page navigation" class="pagination-container">
    <ul class="pagination justify-content-center mb-0">
        <!-- 1. 上一页按钮 -->
        {% if page_obj.has_previous %}
            <li class="page-item">
                <!-- 拼接分页参数 + 搜索参数（切换页码不丢失搜索关键词） -->
                <a class="page-link" href="?page={{ page_obj.previous_page_number }}{% if search_query %}&q={{ search_query }}{% endif %}">
                    上一页
                </a>
            </li>
        {% else %}
            <!-- 无数据时禁用按钮 -->
            <li class="page-item disabled">
                <a class="page-link" href="#" tabindex="-1" aria-disabled="true">
                    上一页
                </a>
            </li>
        {% endif %}

        <!-- 2. 页码列表（只显示当前页前后3页，避免拥挤） -->
        {% for num in page_obj.paginator.page_range %}
            <!-- 当前页高亮显示 -->
            {% if page_obj.number == num %}
                <li class="page-item active" aria-current="page">
                    <a class="page-link" href="#">{{ num }}</a>
                </li>
            <!-- 当前页前后3页显示页码 -->
            {% elif num > page_obj.number|add:'-3' and num < page_obj.number|add:'3' %}
                <li class="page-item">
                    <a class="page-link" href="?page={{ num }}{% if search_query %}&q={{ search_query }}{% endif %}">
                        {{ num }}
                    </a>
                </li>
            {% endif %}
        {% endfor %}

        <!-- 3. 下一页按钮 -->
        {% if page_obj.has_next %}
            <li class="page-item">
                <a class="page-link" href="?page={{ page_obj.next_page_number }}{% if search_query %}&q={{ search_query }}{% endif %}">
                    下一页
                </a>
            </li>
        {% else %}
            <li class="page-item disabled">
                <a class="page-link" href="#" tabindex="-1" aria-disabled="true">
                    下一页
                </a>
            </li>
        {% endif %}
    </ul>
</nav>